package com.wzy.newcollection;

import com.google.common.collect.HashMultiset;
import com.google.common.primitives.Chars;

public class MultisetDemo
{
	//Multiset  这是guava新的数据结构，是无序且可以重复的一种集合，结合了set 和 list
	// 并且拥有map的性质， 调用count方法 ，类似构造了一个map key是元素 ，value是元素在集合中出现的次数，如果没有那么返回0

	private static final String POEM = "南陵别儿童入京\n" +
			"【作者】李白 【朝代】唐译文对照\n" +
			"白酒新熟山中归，黄鸡啄黍秋正肥。\n" +
			"\n" +
			"呼童烹鸡酌白酒，儿女嬉笑牵人衣。\n" +
			"\n" +
			"高歌取醉欲自慰，起舞落日争光辉。\n" +
			"\n" +
			"游说万乘苦不早，著鞭跨马涉远道。\n" +
			"\n" +
			"会稽愚妇轻买臣，余亦辞家西入秦。\n" +
			"\n" +
			"仰天大笑出门去，我辈岂是蓬蒿人。";

	public static void main(String[] args)
	{
		HashMultiset<Object> multiset = HashMultiset.create();
		char[] chars = POEM.toCharArray();
		// 此处也要使用guava的方法，把char数组转为list
		multiset.addAll(Chars.asList(chars));
		// multiset.addAll(Arrays.asList(chars));
		// 注意一定要 '' ，char 使用 ''
		int counts = multiset.count('白');
		System.out.println(counts);
	}
}
